草庐IT

c++ - std::wstring 长度

全部标签

c# - 在 c# 中设置/扩展 List<T> 长度

给定一个List在c#中有没有办法扩展它(在其能力范围内)并将新元素设置为null?我想要类似memset的东西.我不是在这里寻找糖,我想要快速代码。我知道在C中,操作可以在每个条目1-3个asm操作中完成。我找到的最佳解决方案是this:list.AddRange(Enumerable.Repeat(null,count-list.Count));但是这是c#3.0(首选我当前的代码使用:while(list.Count所以这是时间成本的起点。motivationforthis是我需要设置第n个元素,即使它在旧计数之后。 最佳答案

c# - C DLL 中的 PInvoke char* 在 C# 中处理为字符串。空字符问题

CDLL中的函数如下所示:intmy_Funct(char*input,char*output);我必须从C#应用程序调用它。我通过以下方式执行此操作:...DllImportstuff...publicstaticexternintmy_Funct(stringinput,stringoutput);输入字符串完美地传输到DLL(我有可见的证据)。该函数填写的输出虽然是错误的。我有hexa数据,比如:3F-D9-00-01但不幸的是,两个零之后的所有内容都被截断了,只有前两个字节进入了我的C#应用程序。它发生了,因为(我猜)它被视为空字符并将其作为字符串的结尾。知道如何摆脱它吗?我试

c# - WPF TextBox MaxLength——有没有办法将其绑定(bind)到绑定(bind)字段上的数据验证最大长度?

View模型:publicclassMyViewModel{[Required,StringLength(50)]publicStringSomeProperty{...}}XAML:有什么方法可以避免设置TextBox的MaxLength来匹配我的ViewModel(这可能会改变,因为它在不同的程序集中)并让它根据StringLength要求自动设置最大长度? 最佳答案 我用了Behavior将TextBox连接到其绑定(bind)属性的验证属性(如果有)。行为看起来像这样://////Setthemaximumlengthofa

c# - 如果字符串不为空,FluentValidation 如何检查长度?

我正在用两个string测试一个PUT:company.CurrencyCode=request.CurrencyCode??company.CurrencyCode;company.CountryIso2=request.Country??company.CountryIso2;我试过这样的规则:publicUpdateCompanyValidator(){RuleSet(ApplyTo.Put,()=>{RuleFor(r=>r.CountryIso2).Length(2).When(x=>!x.Equals(null));RuleFor(r=>r.CurrencyCode).Le

c# - 将字符串拆分为最大长度的行而不打断单词的最佳方法

我想将一个字符串分成指定最大长度的行,如果可能的话,不拆分任何单词(如果有一个单词超过了最大行长度,那么它就必须被拆分)。一如既往,我敏锐地意识到字符串是不可变的,最好使用StringBuilder类。我见过将字符串拆分为单词然后使用StringBuilder类构建行的示例,但下面的代码对我来说似乎“更简洁”。我在描述中提到“最好”而不是“最有效”,因为我也对代码的“Eloquent”感兴趣。字符串永远不会很大,一般分成两三行,也不会出现几千行的情况。下面的代码真的很糟糕吗?privatestaticIEnumerableSplitToLines(stringstringToSplit

c# - 比较两个不同长度的数组并显示差异

问题:我有两个可能长度不同的数组。我需要遍历两个数组并找到相似点、添加项和删除项。在C#中完成此任务最快、最有效的方法是什么?编辑:数组是预先排序的,它们可以包含50-100个项目之间的任何位置。此外,对速度和/或内存使用没有任何限制(但是,没有人喜欢内存占用;)例如:String[]Foo_Old={"test1","test2","test3"};String[]Foo_New={"test1","test2","test4","test5"};和String[]Bar_Old={"test1","test2","test4"};String[]Bar_New={"test1","

c# - 如何获得特定长度的最大数量

我有一个号码,例如1234567897865;我如何最大化它并创建99999999999999?我是这样做的:intlen=ItemNo.ToString().Length;StringmaxNumString="";for(inti=0;i完成此任务的更好、更合适和更短的方法是什么? 最佳答案 varx=1234567897865;returnMath.Pow(10,Math.Ceiling(Math.Log10(x+1e-6)))-1;为了扩展下面的评论,如果这个问题用十六进制或二进制表示,可以非常简单地使用移位运算符来完成即,

c# - 如何设置datagridview列的最大长度

我有一个DataGridView,可以在TextBox列中输入单位。如何将此列的输入长度限制为6个字符? 最佳答案 使用MaxInputLengthDataGridViewTextBoxColumn的属性。此属性可通过设计器或代码获得:((DataGridViewTextBoxColumn)dataGridView1.Columns[yourColumn]).MaxInputLength=6; 关于c#-如何设置datagridview列的最大长度,我们在StackOverflow上找到

c# - 改进/修复 C 样式 block 注释的正则表达式

我正在(用C#)编写一个简单的解析器来处理一种看起来很像经典C的脚本语言。在我的一个脚本文件中,我用来识别/*block注释*/的正则表达式进入了某种无限循环,占用了100%的CPU多年。我使用的正则表达式是这样的:/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/关于为什么这可能被锁定有什么建议吗?或者,我可以改用什么正则表达式?更多信息:使用面向.NET3.5的C#3.0;我正在使用Regex.Match(string,int)方法在字符串的特定索引处开始匹配;我已经让程序运行了一个多小时,但比赛还没有完成;传递给Regex构造函数的选项是Regex

c# - 时间戳字符串长度

如果我这样做//DefaultimplementationofUNIXtimeofthecurrentUTCtimeTimeSpants=DateTime.UtcNow-newDateTime(1970,1,1,0,0,0,0);stringmyResult="";myResult=Convert.ToInt64(ts.TotalSeconds).ToString();myResult的最大字符串长度是多少,并且它的大小始终相同吗? 最佳答案 Int64是一个带符号的64位整数,这意味着它的值范围从−9,223,372,036,85